import java.util.Scanner;

public class Test {
    /**
     * flag变量用作全局标志，其值的变化代表不同的状态或行为
     * 使用volatile关键字确保多线程环境下的可见性，即当一个线程修改了flag的值，
     * 其他线程可以立即看到修改后的值
     */
    public volatile static int flag=0;
    public static void main(String[] args) {
       Thread t1=new Thread(()->{
          while (flag==0){
              //什么都不做
          }
           System.out.println("t1线程结束");
       });

       Thread t2=new Thread(()->{
           System.out.println("请输入flag的值");
           Scanner scanner=new Scanner(System.in);
           flag=scanner.nextInt();
       });

       t2.start();
       t1.start();
    }
}
